/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

var funcNuevaCancha= function(){
    
      Ext.getCmp("formCrudCancha").getForm().submit({
            url:'cancha/registrar',
            method:'POST',
           // clientValidation: false,
            
            success: function(form,action)
                    {                         
                            var obj = Ext.JSON.decode(action.response.responseText);
                            if(obj.success)
                            {            
                                   Ext.example.msg('Registro Cancha', 'Se registró la cancha con éxito.');
                                    ventanaFormCancha.hide();                                    
                                    Ext.getCmp("gridCanchas").getStore().load({params: {ciudadCancha: formCrudCancha.getForm().findField("ciudadCancha").getValue()}});            
                                    formCrudCancha.loadRecord(formInfoCancha.getRecord());
                                    formCrudCancha.getForm().reset(); 
                            }
                            else   Ext.example.msg('Registro Cancha', 'Error al registrar la cancha.');
                    },
            failure: function(form,action)
                    {
                        Ext.example.msg('Registro Canchas', 'Error al registrar la cancha.');
                    }          
        });
}

var funcEditFormCancha= function(){
    
     Ext.getCmp("formCrudCancha").getForm().submit({
                url:'cancha/editarDatos',
                method:'POST',
                clientValidation: false,
                success: function(form,action)
                        {   
                            var obj = Ext.JSON.decode(action.response.responseText);
                            if(obj.success)
                            {            
                                   Ext.example.msg('Editar Cancha', 'Se han editado los datos con éxito.');
                                    ventanaFormCancha.hide();                                    
                                    Ext.getCmp("gridCanchas").getStore().load({params: {ciudadCancha: formCrudCancha.getForm().findField("ciudadCancha").getValue()}});            
                                    formCrudCancha.getForm().reset();                                 
                            }},
                failure: function(form,action){  Ext.example.msg('Editar Canchas', 'Ocurrió un error al editar los datos.');}
       });
}

var cmbPaisCanchaCrud=new Ext.form.ComboBox({
        // all of your config options
        fieldLabel:'Pais',
        //hideLabel: true,
        id:'cmbPaisCanchaCrud',   
        name:'paisCancha',
        triggerAction: 'all',
        lazyRender:true,
        editable:false,    
        hiddenName:'idPais',
        valueField: 'idPais',           
        store:  new Ext.data.Store({autoLoad: true,
                            fields:[{name:'idPais',type:'int'},{name:'nombrePais',type:'string'}],
                            proxy: {type: 'ajax',
                                    url: 'utilidades/getPaises',  // url that will load data with respect to start and limit params        
                                    reader: {
                                          type: 'json',
                                          root: 'items',
                                          totalProperty: 'total'}}
            }),

            displayField: 'nombrePais',
            listeners:{
                      select: function(combo,record,index)
                            {
                              cmbCiudadCanchaCrud.setDisabled(false);
                              cmbCiudadCanchaCrud.clearValue();
                              strCiudadCanchaCrud.load({params:{'idPais': cmbPaisCanchaCrud.getValue()}});
                            }
                      },
            mode: 'remote',
            emptyText: 'País',            
            allowBlank:false
  });

var strCiudadCanchaCrud= new Ext.data.Store({autoLoad: false,
                            fields:[{name:'idCiudad',type:'int'},{name:'nombreCiudad',type:'string'}],                            
                            proxy: {type: 'ajax',
                                    url: 'utilidades/getCiudades',  // url that will load data with respect to start and limit params        
                                    params:{'idPais': cmbPaisCanchaCrud.getValue()},
                                    reader: {
                                          type: 'json',
                                          root: 'items',
                                          totalProperty: 'total'},
                                      actionMethods: {
                                                        create : 'POST',
                                                        read   : 'POST',
                                                        update : 'POST',
                                                        destroy: 'POST'
                                                    }                                                                          
                                    }
                              
            });                      

var cmbCiudadCanchaCrud=new Ext.form.ComboBox({
        // all of your config options
        fieldLabel: 'Ciudad',
       // hideLabel: true,
        disabled: true,
        id:'cmbCiudadCanchaCrud',   
        name:'ciudadCancha',
        triggerAction: 'all',
        lazyRender:true,
        editable:false,    
        hiddenName:'idCiudad',
        valueField: 'idCiudad',           
        store: strCiudadCanchaCrud,
        queryMode: 'local',
        displayField: 'nombreCiudad',      
        emptyText: 'Ciudad',            
        allowBlank:false,
        listeners:{select: function(combo,record,index){/*storeGridCanchas.load({params:{ciudadCancha: cmbCiudadCanchaCrud.getValue()}});*/}}
 }); 
 
 
 var cmbSuperficieCancha=new Ext.form.ComboBox({
        // all of your config options
        fieldLabel:'Superficie',
        //hideLabel: true,
        id:'cmbSuperficieCancha',   
        name:'superficieCancha',
        triggerAction: 'all',
        lazyRender:true,
        editable:false,    
        hiddenName:'superficieCancha',
        valueField: 'superficieCancha',           
        store:  new Ext.data.Store({autoLoad: true,
                            fields:[{name:'superficieCancha',type:'string'},],
                            proxy: {type: 'ajax',
                                    url: 'cancha/getSuperficies',  // url that will load data with respect to start and limit params        
                                    reader: {
                                          type: 'json',
                                          root: 'items',
                                          totalProperty: 'total'}}
            }),

            displayField: 'superficieCancha',           
            mode: 'remote',
            emptyText: 'Superficie',            
            allowBlank:false
  });
  
  var cmbEstadoCancha=new Ext.form.ComboBox({
        // all of your config options
        fieldLabel:'Estado',
        //hideLabel: true,
        id:'cmbEstadoCancha',   
        name:'estadoCancha',
        triggerAction: 'all',
        lazyRender:true,
        editable:false,    
        hiddenName:'estadoCancha',
        valueField: 'estadoCancha',           
        store:  new Ext.data.Store({autoLoad: true,
                            fields:[{name:'estadoCancha',type:'string'}],
                            proxy: {type: 'ajax',
                                    url: 'cancha/getEstados',  // url that will load data with respect to start and limit params        
                                    reader: {
                                          type: 'json',
                                          root: 'items',
                                          totalProperty: 'total'}}
            }),

            displayField: 'estadoCancha',           
            mode: 'remote',
            emptyText: 'Estado',            
            allowBlank:false
  });
 
 var formCrudCancha=new Ext.form.Panel({
     
    // title: 'Registrar Nueva Cancha',
    id:'formCrudCancha',
     autoWidth:true,
     autoHeight: true,
     frame: true,
     defaultType:  'textfield',
     layout:'anchor',
     defaults:{anchor:'100%', xtype:'textfield'}, 
     items:[{xtype:'fieldset',
             width:'100%',
			autoHeight: true,
            id:'fieldsetCrudCancha',
            title:'Datos del Jugador',
            defaults: { labelWidth:120 },
             items:[
                 {xtype: 'hiddenfield', name:'idCancha'},
                 {xtype: 'textfield', fieldLabel:'Nombre Cancha', name:'nombreCancha'},
                 {xtype:'filefield', name:'fotoCancha', fieldLabel: 'Foto Cancha'},
                 cmbSuperficieCancha,
                 cmbPaisCanchaCrud,
                 cmbCiudadCanchaCrud,
                 cmbEstadoCancha
                ]
        }],
    buttons:[{text:'Registrar',
                              id:'butRegCancha',
                              handler: funcNuevaCancha
                            },{
                                text:'Guardar Cambios',                                
                                id:'butEditCancha',
                                handler: funcEditFormCancha
                            },{text:'Cancelar',
                                handler: function()
                                {ventanaFormCancha.hide();
                                 formCrudCancha.getForm().reset();
                                }
                            }]
    
     
 });
 
 
var ventanaFormCancha = new Ext.Window({
	id     : 'ventanaFormCancha',
        title:'Registrar Cancha',
	modal: true,
	closable:false,
	draggable: false, 
	autoHeight: true,
        animateTarget:'tbseparatorCancha',
	autoWidth  : true,
	items  : [formCrudCancha]
});






